Skip to content

CI: add mpi/distributed module to free CI pipe - #814

Open
iarejula-bsc wants to merge 4 commits into
QuEST-Kit:mainfrom
iarejula-bsc:minidmr_ci
Open

CI: add mpi/distributed module to free CI pipe#814
iarejula-bsc wants to merge 4 commits into
QuEST-Kit:mainfrom
iarejula-bsc:minidmr_ci

Conversation

@iarejula-bsc

@iarejula-bsc iarejula-bsc commented Aug 3, 2026

Copy link
Copy Markdown

Adds three free CI jobs, all using minidmr, an open-source tool built by our team that allows creating a reproducible HPC cluster on Docker to simulate a multi-node MPI cluster . minidmr is already integrated into the CI pipelines of two of our other projects, and is also used to run MPI tests locally.

By using it on QuEST, this lets your CI pipeline run MPI tests on a single free ubuntu-latest runner. test_paid.yml is untouched for now; however, after a careful review, it could be removed in a follow-up to save money.

This PR adds:

  1. test_free.yml: distributed-minidmr-test: full functional tests over real MPI (minidmr, 4 simulated nodes).
  2. audit.yml: sanitisation-test-mpi: ASan over comm/* (the MPI code), minidmr with 2 nodes : the first time this code has run under a sanitiser.
  3. audit.yml: coverage-test-mpi: lcov over comm/* via minidmr, 2 nodes: complements the existing serial coverage job, which can't exercise MPI.

Impact:

  • Cost: replaces the paid equivalent (mpi=ON, cuda=OFF in test_paid.yml, ~$4.80/run, only triggerable manually via workflow_dispatch) with free jobs on every push/PR, saving ~$5/run.
  • Coverage: comm/* goes from 0% measured (explicitly excluded from the serial coverage job, which doesn't compile with MPI) to comm/comm_config.cpp at 77.4% and comm/comm_routines.cpp at 4.3% line coverage.

@iarejula-bsc

Copy link
Copy Markdown
Author

added author info in the header per convention, not sure if this is correct, might be better placed in the headers of the new test instead. Happy to change if needed.

@iarejula-bsc iarejula-bsc changed the title Minidmr ci CI: add mpi/distributed module to free CI pipe Aug 3, 2026
Credits: AccelCom @ Barcelona Supercomputing Center
Credits: AccelCom @ Barcelona Supercomputing Center
Credits: AccelCom @ Barcelona Supercomputing Center
Credits: AccelCom @ Barcelona Supercomputing Center
@iarejula-bsc iarejula-bsc reopened this Aug 3, 2026
@iarejula-bsc

Copy link
Copy Markdown
Author

i run the tests on mare nostrum 5 and on minidmr local and gh actions, same results on all of them

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant